// ~ Package Declaration
// ==================================================

package com.wms.data.domain.service;

// ~ Comments
// ==================================================

/**
 * 
 * 所有的 service 需要實現的接口.
 * 
 * <pre>
 * 歷史紀錄：
 * 2008/12/4 Timothy
 * 	新建檔案
 *  Service 接口及方法的宣告原則是 :
 *    Service 接口 ：
 *      1. 每一支完整的業務功能(比如一個基本資料維護)，可對應兩個Service interface
 *        1.1 增、刪、改等，凡是需要改變 DB 內容的操作，需要繼承 MaintainService
 *        1.2 而所有的查詢操作或無需操作db的作業，則繼承 QueryService
 *    
 *    Service 方法的宣告方式 : 
 *      1. 每一個業務事件(比如觸發一個按鈕、點選一個連接等)，要對應、且只對應一個完整實現該事件的業務方法
 *      2. 這個對應業務事件的業務方法，則應在具體的功能接口中被宣告，也就是說，從service中看到的每一個方法，
 *         都對應了一個完整的業務邏輯。所以說，在良好的設計下，一個業務功能所對應的兩個 Service 接口中，所宣告的方法數量，
 *         應和這個業務功能中存在的業務邏輯數量相同，不能多、也不能少
 *      3. 對應到實現Service的具體類別來說，應該除了被具體實現的接口方法外，不應該存在其他的 public 方法
 *      
 *      PS : 對 coding 要求也許偏高...
 *      注意：針對第一點的描述，一個業務事件對應一個方法，只是說明，能夠從這個方法中看到整個的業務邏輯
 *           絕不是說真正實現該方法的代碼都需要擺到這一個方法中
 * </pre>
 * 
 * @see QueryService
 * @see TransactionService
 * @see MaintainService
 * 
 * @author <pre>
 * SD
 * 	Timothy
 * PG
 * 
 * UT
 * 
 * MA
 * </pre>
 * @version $Rev$
 * 
 *          <p/> $Id$
 * 
 */
public interface Service {

	// ~ Static Fields
	// ==================================================

	// ~ Methods
	// ==================================================

}
